﻿<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
                  assembly="KuaJing.Security"
				        namespace="KuaJing.Security.Domain">

  <class  name="Privilege" table="Security_Privilege">
    <id name="Id" access="field.camelcase"
        column="PrivilegeId" type="Int32">
      <generator class="native" />
    </id>
    <version name="Version" access="field.camelcase" />
    <many-to-one name="Resource" column="ResourceId" foreign-key="fk_Privilege_Resource"
                 class="KuaJing.Security.Domain.Resource,KuaJing.Security" cascade="all"/>
       <many-to-one name="Parent" class="Privilege" 
             column="ParentId" />
    <set name="Children" inverse="true" cascade="all">
      <key column="ParentId" />
      <one-to-many class="Privilege" />
    </set>
    <property name="Operation"  />
    <property name="CreatedTime" access="field.camelcase" />
    <property name="CreatedUserName" access="field.camelcase" />
    <property name="ModifiedTime" access="field.camelcase" />
    <property name="ModifiedUserName" access="field.camelcase" />
    <property name="AccessedTime" access="field.camelcase" />
    <property name="AccessedUserName" access="field.camelcase" />
    <property name="Memo" />
    <property name="IsInvalid" />
  </class>
</hibernate-mapping>
